#ifndef __POSTOPIA_IMAGE_HEADER_HPP__
#define __POSTOPIA_IMAGE_HEADER_HPP__

#include <string>
#include <sstream>
#include <map>

#include <SDL.h>

class Image;

typedef std::map<uint16_t, Image*> ImageMap;

class Image
{
	public:
		Image();
		~Image();
		
		static Image* getImage(uint16_t spriteId);
		
		bool load(const unsigned short& spriteId);
		bool load(const std::string& filename);
		
		void draw(SDL_Rect* rect);
		
	protected:
		SDL_TextureID m_textureId;
		
		static ImageMap ms_images;
};

#endif
